package br.com.ds3.controller;

import java.util.List;

import br.com.caelum.vraptor.Get;
import br.com.caelum.vraptor.Path;
import br.com.caelum.vraptor.Resource;
import br.com.caelum.vraptor.Result;
import br.com.ds3.annotation.Permission;
import br.com.ds3.annotation.Public;
import br.com.ds3.dao.EventoDAO;
import br.com.ds3.model.Evento;
import br.com.ds3.model.Perfil;

@Resource
public class PrincipalController {
	private final EventoDAO eventoDAO;
	private final Result result;
	
	public PrincipalController(EventoDAO eventoDAO, Result result) {
		this.eventoDAO = eventoDAO;
		this.result = result;
	}

	@Path("/")
	@Public
	public void principal(){
		result.redirectTo(this).home(null);
	}

	@Public
    public void home(String mensagemErro) {
		result.include("mensagemErro", mensagemErro);
	}

	@Public
    public void eventos() {
    	List<Evento> eventos = eventoDAO.listaProximosEventos();
    	result.include("eventos", eventos);
    	
//    	List<Atividade> atividades = new AtividadeDAO().listaProximasAtividades();
//    	result.include("atividades", atividades);
    }
	
	@Get
	@Public
    public void contato() {}
	
	@Get
	@Public
    public void recursos() {}

	@Get
	@Permission(value = { Perfil.ADMINISTRADOR, Perfil.ATENDENTE })
    public void areaRestrita() {}
	
	@Get
	@Permission(value = { Perfil.ADMINISTRADOR, Perfil.ATENDENTE })
    public void cadastro() {}
	
	@Get
	@Permission(value = { Perfil.ADMINISTRADOR, Perfil.ATENDENTE })
    public void relatorio() {}
}
